package com.booksystem.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.booksystem.dto.PromotionCouponDTO;
import com.booksystem.dto.PromotionCouponDeleteDTO;
import com.booksystem.dto.PromotionCouponQueryDTO;
import com.booksystem.dto.PromotionCouponUpdateStatusDTO;
import com.booksystem.entity.PromotionCouponDO;

/**
 * <p>
 *   促销优惠券服务接口
 * </p>
 * @author 段伟豪
 */
public interface PromotionCouponService {

    /**
     * 新增优惠券
     * @param dto 优惠券信息
     * @return 是否成功
     */
    Boolean addPromotionCoupon(PromotionCouponDTO dto);

    /**
     * 查询优惠券列表
     * @param queryDTO 查询条件
     * @return 分页结果
     */
    Page<PromotionCouponDO> listPromotionCoupons(PromotionCouponQueryDTO queryDTO);

    /**
     * 更新优惠券状态
     * @param dto 更新参数
     * @return 是否成功
     */
    Boolean updatePromotionCouponStatus(PromotionCouponUpdateStatusDTO dto);

    /**
     * 删除优惠券
     * @param dto 删除参数
     * @return 是否成功
     */
    Boolean deletePromotionCoupon(PromotionCouponDeleteDTO dto);
}